package com.xoa.dao.hr.socialRelations;

import com.xoa.model.hr.HrStaffContract;
import com.xoa.model.hr.socialRelations.SocialRelations;
import com.xoa.model.hr.socialRelations.SocialRelationsExample;
import com.xoa.model.hr.socialRelations.SocialRelationsResult;
import com.xoa.model.hr.socialRelations.SocialRelationsWithBLOBs;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Param;

public interface SocialRelationsMapper {
    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int countByExample(SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int deleteByExample(SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int deleteByPrimaryKey(Integer socialRelId);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int insert(SocialRelationsWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int insertSelective(SocialRelationsWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    List<SocialRelationsWithBLOBs> selectByExampleWithBLOBs(SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    List<SocialRelations> selectByExample(SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    List<SocialRelationsWithBLOBs> selectByPrimaryKey();

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByExampleSelective(@Param("record") SocialRelationsWithBLOBs record, @Param("example") SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByExampleWithBLOBs(@Param("record") SocialRelationsWithBLOBs record, @Param("example") SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByExample(@Param("record") SocialRelations record, @Param("example") SocialRelationsExample example);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByPrimaryKeySelective(SocialRelationsWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByPrimaryKeyWithBLOBs(SocialRelationsWithBLOBs record);

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hr_social_relations
     *
     * @mbggenerated
     */
    int updateByPrimaryKey(SocialRelations record);

    /** 
    * @Description: 根据条件查询 
    * @Author: xiaomeng.Yu
    * @Date: 2018/7/13 
    */ 
    List<SocialRelationsWithBLOBs> selectByIdList(Map<String,Object> map);

    /**
    * @Description: 详情页 根据id查询
    * @Author: xiaomeng.Yu
    * @Date: 2018/7/13
    */
    SocialRelationsWithBLOBs selectById(Integer socialRelId);

    /**
    * @Description: 导出
    * @Author: xiaomeng.Yu
    * @Date: 2018/7/13
    */
    List<SocialRelationsWithBLOBs> socialRelationsResult(Map<String,Object> map);

    /**
    * @Description: 多选删除
    * @Author: xiaomeng.Yu
    * @Date: 2018/7/13
    */
    int deleteByPrimaryKeyByIdList(Integer[] socialRelId);

    /**
    * @Description: 分页
    * @Author: xiaomeng.Yu
    * @Date: 2018/7/13
    */
    List<SocialRelationsWithBLOBs> getSocialRelationsList(Map<String,Object> map);

    /**
     * 员工自助查询
      * @param userId
     * @return
     */
    List<SocialRelationsWithBLOBs> getHrStaffContractList(String userId);

    /**
     * @Description: 社会关系信息数量查询
     * @Author: 戚中校
     * @Date: 2018/7/31
     */
    List<SocialRelations> selectNumByCon(Map<String,Object> map);

    /**
     * 根据 staffName 查询
     * @param
     * @return
     */
    List<SocialRelationsWithBLOBs> getByStaffName(HashMap<String, Object> map);
    int getByStaffNameCount(String staffName);
}